package com.project.mapper;

import com.project.bean.ProgressBean;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDate;

public interface IProgressMapper {
    /**
     * 员工完成项目，将指定进度id的项目完成时间修改为当前时间
     * @param progId 进度id
     */
    public void update(Integer progId,@Param("endDate") LocalDate endDate);

    /**
     * 添加员工
     * 就是加一条中间表记录
     * @param progressBean 进度
     */
    @Insert("INSERT INTO t_progress(p_startDate,p_endDate,fk_staffId,fk_projId)" +
            "VALUES(#{startDate},#{endDate},#{staffBean.staffId},#{projectBean.projId})")
    public void add(ProgressBean progressBean);


    /**
     * 项目交付使用，先把该项目中所有交付日期为未完成的员工的交付日期更改为now
     * 再将项目的状态改为交付使用
     * @param id 项目id
     * @param endDate 交付项目时间
     */
    public void updateProj(@Param("id") Integer id,@Param("endDate") LocalDate endDate);
}
